package com.scale.service.user.service;

import com.example.user.dto.VoicePreferencesUpdateDTO;
import com.example.user.vo.VoicePreferencesVO;

/**
 * 用户语音偏好设置服务接口
 * @author crp
 * @since 2025-09-28
 */
public interface UserVoicePreferencesService {

    /**
     * 获取用户语音偏好设置
     * @param userId 用户ID
     * @return 语音偏好设置
     */
    VoicePreferencesVO getVoicePreferences(Long userId);

    /**
     * 更新用户语音偏好设置
     * @param userId 用户ID
     * @param updateDTO 更新数据
     */
    void updateVoicePreferences(Long userId, VoicePreferencesUpdateDTO updateDTO);

    /**
     * 重置语音偏好设置为默认值
     * @param userId 用户ID
     */
    void resetVoicePreferences(Long userId);

    /**
     * 为新用户创建默认的语音偏好设置
     * @param userId 用户ID
     */
    void createDefaultVoicePreferences(Long userId);
}

